package com.tdxy.am1;

import javax.swing.*;
import java.awt.*;

public class MyPanel extends JPanel implements Runnable{

    private int y ;

    public MyPanel (){
        y = 100 ;
        this.setBounds(0,0,800,600);
    }

    // 此时,如果有两个方法, 想对同一个值进行改变。要将值提取成变量。
    @Override
    public void paint(Graphics g) {
        super.paint(g); // 保留当前行
        g.setColor(Color.BLACK);
        g.fillRect(0,0,800,600);
        g.setColor(Color.GREEN);
        g.fillOval(100,y,100,100);

    }

    // 将 Runnable 接口的 run () 进行重写。
    public void run(){

        while(true){
            try {
                Thread.sleep(200);  // 控制绘画的速率
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            y = y+3 ;  // 控制圆下移的速度.
            if (y > 580) {
                y = 0 ;
            }
            repaint(); // 重新绘画
        }


    }
}
